package ${basepackage}.mapper.${databaseNameCamel};

import java.util.List;

import ${basepackage}.model.criteria.${databaseNameCamel}.${table.generateClassName}Criteria;

import ${basepackage}.model.po.${databaseNameCamel}.${table.generateClassName};

import org.apache.ibatis.annotations.Param;

import com.github.miemiedev.mybatis.paginator.domain.PageBounds;
import com.github.miemiedev.mybatis.paginator.domain.PageList;

public interface ${table.generateClassName}Mapper {

	public ${table.generateClassName} get(${table.primaryKey.type} ${table.primaryKey.name?uncap_first});

	public List<${table.generateClassName}> getAll();

	public void remove(${table.primaryKey.type} ${table.primaryKey.name?uncap_first});

	public ${table.primaryKey.type} insert(${table.generateClassName} ${table.unCapGenerateClassName});

	public Integer update(${table.generateClassName} ${table.unCapGenerateClassName});

	public PageList<${table.generateClassName}> getList(@Param("criteria") ${table.generateClassName}Criteria criteria, PageBounds pageBounds);

	public Integer getCount(@Param("criteria") ${table.generateClassName}Criteria criteria);
}
